Method and apparatus for implementing osd

ABSTRACT

The present disclosure provides a method and apparatus for implementing OSD, and relates to the OSD technology. The method for implementing OSD provided by the present disclosure can include receiving a WMI event, the WMI event being triggered based on an OSD shortcut operation initiated by a user, and determining an OSD function corresponding to the WMI event according to a correspondence between WMI events and OSD functions, and acquiring popup window information corresponding to the OSD function. The method can further include generating an OSD function popup window according to the popup window information, and displaying the OSD function popup window. In embodiments of the present disclosure, attention is paid to WMI events corresponding to OSD shortcut operations, and corresponding OSD functions triggered by the WMI events. Thus, a unified implementation method for OSD functions of terminal devices produced by different manufacturers can be provided.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to Chinese Patent Application No.2019110891448 filed on Nov. 8, 2019, the entire contents of which areincorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates to the On-Screen Display (OSD) technologyand in particular to a method and apparatus for implementing OSD.

BACKGROUND

OSD is generally a rectangular menu including information about variousadjustment options of the display, which pops up on the screen after theMenu key is pressed. Various operation indexes, such as a color, mode,and geometry of the display, can be adjusted to the best usage statethrough the menu.

OSD implementation methods can include:

1. Superposition and synthesis of an external OSD generator and a videoprocessor where the implementation principle of this method is thatpictures of a TV set and OSD display contents are switched by acharacter generator and a display cache built in a Micro-Controller Unit(MCU) through Fast-Blank signals, so that OSD characters and othercontents are superposed on the final display picture; and

2. Techniques where the OSD is supported in the video processor, and OSDinformation is directly superposed in the video cache. In this way, thevideo processing usually requires an external memory or a small amountof internal row caches, and also requires an OSD generator. Thesynthesis and control of OSD are directly completed in the video cache.

SUMMARY

The present disclosure provides a method and apparatus for implementingOSD. In accordance with a first aspect of the embodiments of the presentdisclosure, a method for implementing On-Screen Display (OSD) isprovided that can be applied to a terminal device. The method caninclude the steps of receiving a Windows Management Instrumentation(WMI) event, the WMI event being triggered based on an OSD shortcutoperation initiated by a user, and determining an OSD functioncorresponding to the WMI event according to a correspondence between WMIevents and OSD functions, and acquiring popup window informationcorresponding to the OSD function. The method can further includegenerating an OSD function popup window according to the popup windowinformation, and displaying the OSD function popup window.

Optionally, in the method, the popup window information corresponding tothe OSD function can include one or more of the following information,including size information of a popup window, position information ofthe popup window, information of OSD function options, and transparencyinformation of the popup window.

Additionally, in the method, the generating an OSD function popup windowaccording to the popup window information can include generating the OSDfunction popup window in an animated manner according to popup windowinformation corresponding to the OSD function, the OSD function popupwindow being a layer window.

In the method, the receiving a WMI event can include receiving the WMIevent through inter-process communication of an operating system.

The method can further include acquiring the correspondence between theWMI events and the OSD functions in advance.

Further, in the method, the correspondence between the WMI events andthe OSD functions further includes reserved extension bits, theextension bits are used for storing extended WMI events and OSDfunctions corresponding to the extended WMI events, and the extended WMIevents are triggered based on extended OSD shortcut operations.

In accordance with a second aspect of the embodiments of the presentdisclosure, an apparatus for implementing On-Screen Display (OSD) isprovided. The apparatus can include a processor, and a memory configuredto store instructions executable for the processor. When executed by theprocessor, the instructions can cause the processor to receive a WindowsManagement Instrumentation (WMI) event, the WMI event being triggeredbased on an OSD shortcut operation initiated by a user, determine, froma correspondence between WMI events and OSD functions, an OSD functioncorresponding to the WMI event, and acquire popup window informationcorresponding to the OSD function, generate an OSD function popup windowaccording to the popup window information, and display the OSD functionpopup window.

Optionally, in the apparatus, the popup window information correspondingto the OSD function can include one or more of the followinginformation, including size information of a popup window, positioninformation of the popup window, information of OSD function options,and transparency information of the popup window.

In the apparatus, the instructions can further cause the processor togenerate the OSD function popup window in an animated manner accordingto popup window information corresponding to the OSD function, the OSDfunction popup window being a layer window.

Further, in the apparatus, the instructions further cause the processorto receive the WMI event through inter-process communication of anoperating system.

The instructions further cause the processor to acquire thecorrespondence between the WMI events and the OSD functions in advance.

Additionally, in the apparatus, the correspondence between the WMIevents and the OSD functions further includes reserved extension bits,the extension bits are used for storing extended WMI events and OSDfunctions corresponding to the extended WMI events, and the extended WMIevents are triggered based on extended OSD shortcut operations.

In accordance with a third aspect of the embodiments of the presentdisclosure, a non-temporary computer-readable storage medium isprovided, instructions in the storage medium, when executed by aprocessor of a mobile terminal, enabling the mobile terminal to executea method for implementing On-Screen Display (OSD). The method caninclude receiving a Windows Management Instrumentation (WMI) event, theWMI event being triggered based on an OSD shortcut operation initiatedby a user, determining an OSD function corresponding to the WMI eventaccording to a correspondence between WMI events and OSD functions, andacquiring popup window information corresponding to the OSD function,generating an OSD function popup window according to the popup windowinformation, and displaying the OSD function popup window.

The technical solutions provided in the embodiments of the presentinvention can have the following beneficial effects. For example, in thetechnical solutions of the present disclosure, attention is paid to WMIevents corresponding to OSD shortcut operations and corresponding OSDfunctions triggered by the WMI events, instead of underlying hardwareoperations triggered by different OSD shortcut keys. In this way, evenif OSD shortcut keys for terminal devices produced by differentmanufacturers are different and their hardware operations are different,the implementation of OSD functions can still be unified by triggering asame WMI event through the OSD shortcut keys.

It should be understood that the foregoing general description and thefollowing detailed description are merely exemplary and explanatory, andare not intended to limit the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings to be described herein are incorporated intothis specification and constitute a part of this specification. Theseaccompanying drawings show the embodiments of the present invention, andare used, together with this specification, to explain the principle ofthe present invention.

FIG. 1 is a schematic flowchart of a method for implementing OSDaccording to an exemplary embodiment;

FIG. 2 shows a flowchart of a method for implementing OSD according toan exemplary embodiment;

FIG. 3 shows a flowchart of a method for implementing OSD according toan exemplary embodiment;

FIG. 4 is a schematic flowchart of receiving a WMI event throughinter-process communication of an operating system in the method forimplementing OSD according to an exemplary embodiment;

FIG. 5 is a schematic diagram of monitoring and reporting a WMI event,by a Windows service, to implement an OSD function according to anexemplary embodiment;

FIG. 6 shows a flowchart of a method for implementing OSD according toan exemplary embodiment;

FIG. 7 is a structural block diagram of an apparatus for implementingOSD according to an exemplary embodiment;

FIG. 8 is a structural block diagram of an apparatus for implementingOSD according to an exemplary embodiment; and

FIG. 9 is a structural block diagram of an apparatus for implementingOSD according to an exemplary embodiment.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

Exemplary embodiments will be described in detail herein, and examplesin the exemplary embodiments are shown in the accompanying drawings.When the accompanying drawings are involved in the followingdescription, unless otherwise indicated, identical reference numerals indifferent accompanying drawings indicate identical or similar elements.The implementations described in the following exemplary embodiments donot represent all implementations consistent with the present invention.Instead, the implementations are merely examples of apparatuses andmethods consistent with some aspects of the present invention asdescribed in the appended claims.

This embodiment discloses a method for implementing OSD. With referenceto FIG. 1, FIG. 1 shows a flowchart of a method for implementing OSDaccording to an exemplary embodiment. The method for implementing OSDmay be applied in a terminal device. As shown in FIG. 1, the method forimplementing OSD includes the following steps.

In the step S11, a Windows Management Instrumentation (WMI) event isreceived, the WMI event being triggered based on an OSD shortcutoperation initiated by a user. The WMI event being triggered based onthe OSD shortcut operation initiated by the user means that acorresponding WMI event is triggered when the user initiates an OSDshortcut operation. For example, when the user executes an inputoperation for the key CapsLock, a WMI event corresponding to this inputoperation is triggered. For another example, when the user executes aninput operation for a combined shortcut key, a WMI event correspondingto this input operation is triggered, wherein the combined shortcut keymay be, but not limited to, Fn+F6.

In the step S12, an OSD function corresponding to the WMI event isdetermined according to a correspondence between WMI events and OSDfunctions, and popup window information corresponding to the OSDfunction is acquired. The involved correspondence between WMI events andOSD functions may be configured by the system or set by the user. Thecorrespondence between WMI events and OSD functions refers thatdifferent WMI events correspond to different OSD functions,respectively. That is, different WMI events may call different OSDfunctions, and function popup windows corresponding to the OSD functionsare displayed to facilitate the user to adjust the OSD functions.

The OSD functions involved in the present disclosure include variousfunctions related to the On-Screen Display (OSD). For example, thefunctions include adjustment of color, brightness, mode and geometry ofthe display, mode switching of the external projector, or the like. TheWMI events include various Windows management instrumentation events.For example, the WMI events include Boot/WMI/HID_EVENT1,Boot/WMI/HID_EVENT2 or the like. In practical applications, thecorrespondence between WMI events and OSD functions may be set withreference to the correspondence between the OSD shortcut keys fortriggering the WMI events and the OSD functions. For example, the OSDfunction corresponding to the combined shortcut key Fn+F7 is a modeswitching function for the external projector. On this basis, the OSDfunction corresponding to the WMI event triggered by the combinedshortcut key Fn+F7 may be set as the mode switching function for theexternal projector.

In the step S12, the popup window information corresponding to the OSDfunction may be acquired in various ways. For example, the popup windowinformation may be acquired from the correspondence between WMI eventsand OSD functions. That is, in the correspondence between WMI events andOSD functions, different WMI events correspond to different OSDfunctions, respectively; and, in the correspondence, different OSDfunctions correspond to popup window information used for generating OSDfunction popup windows, respectively. For another example, the popupwindow information corresponding to the OSD function corresponding tothe reported WMI event may be acquired from the popup window informationcorresponding to various OSD functions stored locally or in a thirdparty.

In the step S13, an OSD function popup window is generated according tothe popup window information.

In the step S14, the OSD function popup window is displayed. Theinvolved OSD function popup window may provide operation options of oneor more OSD functions for the user. The user may correspondingly adjustany one or more OSD functions by clicking or touching the options in theOSD function popup window. For example, the display color function popupwindow contains a display color value increase option and a displaycolor value decrease option. In this way, the user clicking the displaycolor value increase option is equivalent to the user performing anoperation of increasing the current color value of the display. The userclicks the display color value decrease option is equivalent to the userperforming an operation of decreasing the current color value of thedisplay.

It can be known from the foregoing description that, in this embodiment,attention is paid to WMI events triggered by OSD shortcut keys andcorresponding OSD functions triggered by the WMI events, instead ofunderlying hardware operations triggered by different OSD shortcut keys.In this way, even if OSD shortcut keys for terminal devices produced bydifferent manufacturers are different and their hardware operations aredifferent, the implementation of OSD functions can still be unified bytriggering a same WMI event through the OSD shortcut keys, so that theimplementation of OSD functions in the related art is simplified.

This embodiment further discloses a method for implementing OSD. In thismethod, the popup window information corresponding to the OSD functionmay include any one or more of the following information, including sizeinformation of the popup window, position information of the popupwindow, information of OSD function options, and transparencyinformation of the popup window.

If the popup window information corresponding to the OSD functionincludes the size information of the popup window, the size of the OSDfunction popup window may be set according to the size information ofthe popup window.

If the popup window information corresponding to the OSD functionincludes the position information of the popup window, the coordinateposition of the top left corner of the OSD function popup window on thedisplay screen may be set according to the position information of thepopup window.

If the popup window information corresponding to the OSD functionincludes the information of OSD function options, various operationoptions to be displayed in the OSD function popup window may be setaccording to the information of OSD function options. The operationoptions may include various options. For example, when the OSD functionis the display color setup, the information of OSD function optionscorresponding to the OSD function may include a display color valueincrease option, a display color value decrease option or the like. Whenthe OSD function is the display brightness setup, the information of OSDfunction options corresponding to the OSD function may include a displaybrightness value increase option, a display brightness value decreaseoption or the like.

If the OSD function popup window information includes the transparencyinformation of the popup window, the transparency of the OSD functionpopup window may be set according to the transparency information of thepopup window. For example, the OSD function popup window may besemi-transparent, non-transparent or the like.

This embodiment further discloses a method for implementing OSD. FIG. 2shows a flowchart of a method for implementing OSD according to anexemplary embodiment. As shown in FIG. 2, the step S13 shown in FIG. 1includes the following step S21, where the OSD function popup window isgenerated in an animated manner according to popup window informationcorresponding to the OSD function, the OSD function popup window being alayered window.

The way to generate the OSD function popup window in an animated mannercan be that, when the user presses down a certain OSD shortcut key, theOSD function popup window corresponding to the OSD shortcut key may bedynamically displayed to the user. For example, the animation way may befade-in fade-out, so that the OSD function popup window is dynamicallydisplayed.

The layer window used in the OSD function popup window may beautomatically combined with an inactive window under the Windows,realizing the mixed effect of different windows. Additionally, thetransparency of the OSD function popup window may also be controlled bypasting pictures to the layer window. For example, the windowtransparency may be dynamically adjusted regularly through a timer, sothat the OSD function popup window achieves the fade-out effect, thedisplay effect of the OSD function popup window is optimized, and theuser experience is improved.

This embodiment further discloses a method for implementing OSD.Specifically, FIG. 3 shows a flowchart of a method for implementing OSDaccording to an exemplary embodiment. As shown in FIG. 3, the step S11shown in FIG. 1 can include step S31, where the WMI event is receivedthrough inter-process communication of an operating system.

As shown in FIG. 4, the step S31 shown in FIG. 3 can include thefollowing steps S41 where the operating system of the terminal devicemonitors the WMI event through a Windows Service, and step 42 where,upon monitoring the WMI event, the terminal device receives the WMIevent through inter-process communication of the operating system.

For example, the process of receiving the WMI event may be realized bycalling back the WMI event. That is, the call-back of the WMI event maybe registered in advance by using an IWbemServices interface through aComponent Object Model (COM) technology. There is a correspondencebetween WMI events and OSD shortcut operations. In this way, when acertain OSD shortcut operation is detected, the operating systemdetermines a WMI event corresponding to this OSD shortcut operation.Subsequently, the determined WMI event is called back in a manner ofreceiving event asynchronously, and the WMI event is reported to an OSDapplication (OSD APP) through inter-process communication for subsequentoperations.

The principle of monitoring the WMI event by the operating system isshown in FIG. 5. When the user initiates an OSD shortcut operation, inthe underlying hardware shown in FIG. 5, an Embedded Controller (EC)will detect the OSD shortcut operation, and the EC transmits a signal(e.g., a scan code or Q event signal) corresponding to the OSD shortcutoperation to a Basic Input Output System (BIOS). The BIOS transmits theOSD shortcut operation detected by the hardware to a Windows Service ina User Level, and the Windows Service determines triggering acorresponding WMI event according to the received OSD shortcut operationand reports the triggered WMI event to an OSD Utility. An OSD Service inthe OSD Utility notifies the WMI event to an OSD APP throughInter-Process Communication (IPC) so as to do a corresponding action, sothat the separation of the User Interface (UT) from services isrealized, and higher flexibility and robustness are realized.

This embodiment further discloses a method for implementing OSD. Withreference to FIG. 6, FIG. 6 shows a flowchart of a method forimplementing OSD according to an exemplary embodiment. As shown in FIG.6, based on the steps S11 to S14, the method can further include stepS61, where the correspondence between WMI events and OSD functions isacquired in advance.

The correspondence between WMI events and OSD functions may be acquiredin advance in various ways. For example, the correspondence between WMIevents and OSD functions may be locally acquired from the terminaldevice. For another example, the correspondence between WMI events andOSD functions may be acquired from a third party.

The correspondence between WMI events and OSD functions locally acquiredfrom the terminal device may be initially set by the terminal device, ormay be set and stored according to the user's operation. When thecorrespondence between various WMI events and various OSD functions isstored according to the user's operation, the WMI event triggered by theOSD shortcut operation may be set firstly, and the OSD function calledby the OSD shortcut operation is then determined. In this way, the WMIevent triggered by the OSD shortcut operation may correspond to the OSDfunction called by the OSD shortcut operation. For example, the WMIevent triggered by the combined OSD shortcut key Fn+F7 is set asBoot/WMI/HID_EVENT2, and the OSD function to be called by the combinedOSD shortcut key Fn+F7 is the mode switching function for the externalprojector. Therefore, in the correspondence between WMI events and OSDfunctions, the OSD function corresponding to the WMI eventBoot/WMI/HID_EVENT2 is stored as the mode switching function for theexternal projector.

This embodiment further discloses a method for implementing OSD. In thismethod, the correspondence between WMI events and OSD functions mayfurther include reserved extension bits, the extension bits are used forstoring extended WMI events and OSD functions corresponding to theextended WMI events, and the extended WMI events are triggered based onextended OSD shortcut operations.

In this embodiment, considering that the OSD function may be extended,after a new OSD function is developed, the OSD shortcut key of the newOSD function can trigger an extended WMI event, the extended WMI eventis stored in the extension bits of the correspondence, and the OSDfunction corresponding to the extended WMI event is stored in theextension bits.

In this embodiment, the WMI event is triggered by the OSD shortcutoperation initiated by the user, that is, there is a correspondencebetween WMI events and OSD shortcut keys. WMI events correspondinglytriggered by different OSD shortcut keys may be configured in advance.

In this embodiment, the correspondence between various OSD shortcut keysand the WMI events triggered by the OSD shortcut keys may be stored in amanner with reference to the following table 1.

TABLE 1 Correspondence between various OSD shortcut keys and the WMIevents triggered by the OSD shortcut keys OSD Shortcut Globally uniqueidentifier WMI event key 2dbe0be8-6258-43e5-b0be-1b8c25ba62b7Boot/WMI/HID_EVENT1 Fn + F6 2ae67899-7348-429c-90e2-4ca7d1a5b575Boot/WMI/HID_EVENT2 Fn + F7 89a34d62-79e4-4776-b820-b4a6b7457378Boot/WMI/HID_EVENT3 Fn + F8 F1244fb8-d492-4abf-bb4c-90d1b333fcb8Boot/WMI/HID_EVENT4 Fn + F9 f4692311-9afb-4511-b696-65be7b685842Boot/WMI/HID_EVENT5_0  Fn + F10 0c348233-5929-4b23-9747-7f816ae413f8Boot/WMI/HID_EVENT5_1 ac1e3a3d-85e8-42d0-a929-70cb11a756fdBoot/WMI/HID_EVENT5_2 f23def99-fa41-4a05-8e15-5a0ce4bd835eBoot/WMI/HID_EVENT5_3 530b012d-69b0-4c01-8d8e-8a97e4c4e7a7Boot/WMI/HID_EVENT5_4 16f71379-f1f9-4d25-b040-aa9ca89ffd5dBoot/WMI/HID_EVENT5_5 3a31f432-5b57-478e-9238-8527985ef68bBoot/WMI/HID_EVENT5_6 85d37db5-3beb-48f2-98e1-758161941bcaBoot/WMI/HID_EVENT5_7 41e009a2-119b-4988-a9e1-1f7c5c8ddc90Boot/WMI/HID_EVENT5_8 54671c7a-015f-4d9c-9c70-89ee922a6dfbBoot/WMI/HID_EVENT5_9 ca54bfba-e042-4113-8b26-f551ba005966Boot/WMI/HID_EVENT5_10  Fn + F10 f3898fef-1de4-4bdc-83fa-c22444267f59Boot/WMI/HID_EVENT6    Fn + Space 238eff77-0e63-47f8-9f2e-2b8ce42964aBoot/WMI/HID_EVENT7    Fn + Space 9f6af08e-573b-4f94-9033-a68c672d2381Boot/WMI/HID_EVENT8  Fn + Esc 3223ec2d-cb66-48c3-bdcd-56c413f57bb9Boot/WMI/HID_EVENT9  Fn + Esc 184cc2f4-7673-4aae-b3e2-c4390799852cBoot/WMI/HID_EVENT10 DoubleFn cdc56ace-b6f4-47c1-b756-f35661d99440Boot/WMI/HID_EVENT11 Capslock 2ac38674-0bb2-4e39-a21e-2facab1623edBoot/WMI/HID_EXT_EVENT1 eb2464d2-d6f5-483f-bc9c-685e89f536f6Boot/WMI/HID_EXT_EVENT2 934836eb-37c6-4aad-bced-155b41ef0894Boot/WMI/HID_EXT_EVENT3 e379ab63-5ddb-4f86-a482-7a6332ee65f7Boot/WMI/HID_EXT_EVENT4 d69d08bc-d14c-43ff-a06b-fa703f7723f7Boot/WMI/HID_EXT_EVENT5 984082b0-2c33-406f-8d59-2b1c15ea7e21Boot/WMI/HID_EXT_EVENT6 bed436a6-fbf5-4018-9211-1982255841c6Boot/WMI/HID_EXT_EVENT7 7cef85fe-8dc3-4646-943c-d71015f40945Boot/WMI/HID_EXT_EVENT8

The first left column in the table 1 shows the Globally UniqueIdentifier (GUID) of each WMI event. The GUID can be used for indicatingthe unique identifier corresponding to the WMI event. The second leftcolumn in the table 1 shows each WMI event. The third left column in thetable 1 shows the OSD shortcut key corresponding to the WMI event, i.e.,the OSD shortcut key that can trigger the WMI event. In the table 1, theblanks in the third column can be used as extension bits, indicatingthat there is currently no OSD shortcut key corresponding to the WMIevent. When the WMI event corresponding to certain extension bits isconfigured to implement an extended OSD function, the OSD shortcut keycorresponding to the extended OSD function is added to the extensionbits. Moreover, it can be known from the table 1 that the same OSDshortcut key may correspond to different WMI events. Considering theterminal devices produced by different manufacturers, the OSD functionscorresponding to the OSD shortcut operation may be different. Therefore,in the table 1, OSD shortcut keys of terminal devices produced bydifferent manufacturers may correspond to different WMI events, and onecorrespondence will be selected as required. For example, according tothe specific function of the OSD shortcut key Fn+Esc of differentterminal devices produced by different manufacturers, one WMI event canbe selected, from WMI event of Boot/WMI/HID_EVENTS or WMI event ofBoot/WMI/HID_EVENT9, to correspond to Fn+Esc.

FIG. 7 shows a structural block diagram of an apparatus for implementingOn-Screen Display (OSD) according to an exemplary embodiment. Withreference to FIG. 7, the apparatus can include a receiving module 701,an inquiry module 702, an OSD function processing module 703, and adisplay module 704.

The receiving module 701 is configured to receive a WMI event, whereinthe WMI event may be triggered based on an OSD shortcut operationinitiated by a user.

The inquiry module 702 is configured to determine, from a correspondencebetween WMI events and OSD functions, an OSD function corresponding tothe WMI event, and acquire popup window information corresponding to theOSD function. For example, it is possible that, upon receiving the WMIevent, the receiving module determines, from the correspondence betweenWMI events and OSD functions, an OSD function corresponding to thereceived WMI event, and acquires popup window information correspondingto the OSD function.

The OSD function processing module 703 is configured to generate an OSDfunction popup window according to the popup window information.

The display module 704 is configured to display the OSD function popupwindow.

This embodiment further discloses an apparatus for implementing OSD. Thepopup window information corresponding to the OSD function acquired bythe inquiry module 702 include one or more of the following information,including size information of a popup window, position information ofthe popup window, information of OSD function options, and transparencyinformation of the popup window.

For example, if the popup window information corresponding to the OSDfunction includes the size information of the popup window, the OSDfunction processing module may set the size of the OSD function popupwindow according to the size information of the popup window.

If the popup window information corresponding to the OSD functionincludes the position information of the popup window, the coordinateposition of the top left corner of the OSD function popup window on thedisplay screen may be set according to the position information of thepopup window.

If the popup window information corresponding to the OSD functionincludes the information of OSD function options, various operationoptions to be displayed in the OSD function popup window may be setaccording to the information of OSD function options.

If the OSD function popup window information includes the transparencyinformation of the popup window, the transparency of the OSD functionpopup window may be set according to the transparency information of thepopup window.

This embodiment further discloses an apparatus for implementing OSD. Thegenerating an OSD function popup window according to the popup windowinformation includes:

The OSD function processing module 703 generates the OSD function popupwindow in an animated manner according to popup window informationcorresponding to the OSD function, the OSD function popup window being alayered window.

The way to generate the OSD function popup window in an animated mannermay be as follows: when the user presses down a certain OSD shortcutkey, the OSD function popup window corresponding to the OSD shortcut keymay be dynamically displayed to the user. For example, the animation waymay be fade-in fade-out, so that the OSD function popup window isdynamically displayed.

This embodiment further discloses an apparatus for implementing OSD. Inthe apparatus, the receiving a WMI event can include the receivingmodule 701 receiving the WMI event through inter-process communicationof an operating system.

This embodiment further discloses an apparatus for implementing OSD. Asshown in FIG. 8, based on the receiving module 701, the inquiry module702, the OSD function processing module 703 and the display module 704,the apparatus further includes an acquisition module 801.

The acquisition module 801 is configured to acquire the correspondencebetween the WMI events and the OSD functions in advance.

The correspondence between WMI events and OSD functions acquired by theacquisition module 801 may further contain the correspondence betweenvarious OSD shortcut keys and WMI events.

This embodiment further discloses an apparatus for implementing OSD. Thecorrespondence between WMI events and OSD functions involved in theapparatus further contains reserved extension bits. The extension bitsmay store extended WMI events and OSD functions corresponding to theextended WMI events. The extended WMI events may be triggered based onthe extended OSD shortcut operations. In this way, when an OSD functionis extended, the extended OSD function may also be called by triggeringthe corresponding WMI event through an OSD shortcut operation.

This embodiment further discloses an apparatus for implementing OSD. Inthis apparatus, the receiving module 701 may be provided in an OSDservice, and the function of the receiving module 701 is implemented bythe OSD service. That is, the OSD service can receive the WMI eventtriggered by the OSD shortcut operation and reported by the Windowsservice. The inquiry module 702, the OSD function processing module 703and the display module 704 may be integrated in an OSD APP, and thefunctions of the inquiry module 702, the OSD function processing module703 and the display module 704 are implemented by the OSD APP.

For the apparatuses in the above embodiments, the specific operationsexecuted by each unit module have been described in detail in theembodiments of the methods, and will not be repeated here.

FIG. 9 is a block diagram of an apparatus 900 for implementing OSDaccording to an exemplary embodiment. For example, the apparatus 900 maybe a mobile phone, a computer, a digital broadcasting terminal, amessaging device, a game console, a tablet device, a medical device, afitness device, a personal digital assistant, and the like.

As shown in FIG. 9, the apparatus 900 may include one or more of thefollowing components: a processing component 902, a memory 904, a powercomponent 906, a multimedia component 908, an audio component 910, aninput/output (I/O) interface 912, a sensor component 914, and acommunication component 916.

The processing component 902 generally controls the overall operation ofthe apparatus 900, such as operations associated with display, telephonecall, data communication, camera operations and recording operations.The processing component 902 may include one or more processors 920 toexecute instructions to complete all or some of the steps in the methodsdescribed above. Additionally, the processing component 902 may includeone or more modules to facilitate interaction between the processingcomponent 902 and other components. For example, the processingcomponent 902 may include a multimedia module to facilitate interactionbetween the multimedia component 908 and the processing component 902.

The memory 904 is configured to store various types of data to supportthe operation of the apparatus 900. Examples of the data includeinstructions for any application or method operating on the apparatus900, contact data, phonebook data, messages, pictures, video or thelike. The memory 904 may be implemented by any type of volatile ornon-volatile storage devices or a combination thereof, for example, aStatic Random Access Memory (SRAM), an Electrically ErasableProgrammable Read-Only Memory (EEPROM), an Erasable ProgrammableRead-Only Memory (EPROM), a Programmable Read-Only Memory (PROM), aRead-Only Memory (ROM), a magnetic memory, a flash memory, a magneticdisk, or an optical disk.

The power component 906 supplies power to various components of theapparatus 900. The power component 906 may include a power managementsystem, one or more power supplies, and other components associated withthe generation, management and distribution of power for the apparatus900.

The multimedia component 908 includes a screen to provide an outputinterface between the apparatus 900 and a user. In some embodiments, thescreen may include a Liquid Crystal Display (LCD) and a Touch Panel(TP). If the screen includes a TP, the screen may be implemented as atouch screen to receive input signals from the user. The touch panelincludes one or more touch sensors to sense touching, sliding andgestures on the touch panel. The touch sensor may sense the boundary ofa touch or slide action, and also detect the duration and pressurerelated to the touch or slide operation. In some embodiments, themultimedia component 908 includes a front camera and/or a rear camera.When the apparatus 900 is in an operation mode such as a shooting modeor a video mode, the front camera and/or the rear camera may receiveexternal multimedia data. Each of the front camera and the rear cameramay be a fixed optical lens system or have a focal length and an opticalzooming capability.

The audio component 910 is configured to output and/or input audiosignals. For example, the audio component 910 includes a microphone(MIC). When the apparatus 900 is in an operation mode such as a callmode, a recording mode or a voice recognition mode, the microphone isconfigured to receive external audio signals. The received audio signalsmay be further stored in the memory 804 or transmitted via thecommunication component 916. In some embodiments, the audio component910 further includes a loudspeaker configured to output the audiosignals.

The I/O interface 912 provides an interface between the processingcomponent 902 and a peripheral interface module. The peripheralinterface module may be a keyboard, a click wheel, buttons or the like.These buttons may include, but not limited to: a Home button, a Volumebutton, a Start button, and a Lock button.

The sensor component 914 includes one or more sensors configured toprovide state evaluation of various aspects of the apparatus 900. Forexample, the sensor component 914 may detect the on/off state of theapparatus 900 and the relative position of a component. For example, ifthe component is a display and a keypad of the apparatus 900, the sensorcomponent 914 may also detect the position change of the apparatus 900or one component of the apparatus 900, the presence or absence of theuser's contact with the apparatus 900, the orientation oracceleration/deceleration of the apparatus 900 and the temperaturechange of the apparatus 900. The sensor component 914 may include aproximity sensor configured to detect the presence of nearby objectswithout any physical contact. The sensor component 914 may furtherinclude an optical sensor (e.g., a CMOS or CCD image sensor) for use inimaging applications. In some embodiments, the sensor component 914 mayfurther include an acceleration sensor, a gyroscope sensor, a magneticsensor, a pressure sensor or a temperature sensor.

The communication component 916 is configured to facilitate the wired orwireless communication between the apparatus 900 and other devices. Theapparatus 900 may access to a wireless network based on communicationstandards, for example, WiFi, 2G, 3G or a combination thereof. In anexemplary embodiment, the communication component 916 receives abroadcast signal or broadcast related information from an externalbroadcast management system via a broadcast channel. In an exemplaryembodiment, the communication component 916 further includes aNear-Field Communication (NFC) module to facilitate short-rangecommunication. For example, the NFC module may be implemented based on aRadio Frequency Identification (RFID) technology, an Infrared DataAssociation (IrDA) technology, an Ultra Wide Band (UWB) technology, aBluetooth (BT) technology and other technologies.

In an exemplary embodiment, the apparatus 900 may be implemented by oneor more Application Specific Integrated Circuits (ASICs), Digital SignalProcessors (DSPs), Digital Signal Processing Devices (DSPDs),Programmable Logic Devices (PLDs), Field Programmable Gate Arrays(FPGAs), controllers, microcontrollers, microprocessors or otherelectronic elements to execute the methods described above.

In an exemplary embodiment, a non-temporary computer-readable storagemedium including instructions is further provided, for example, thememory 904 including instructions. The instructions may be executed bythe processor 920 of the apparatus 900 to complete the methods describedabove. For example, the non-temporary computer-readable storage mediummay be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, afloppy disk, an optical data storage device, and the like.

A non-temporary computer-readable storage medium is provided.Instructions in the storage medium, when executed by a processor of amobile terminal, enable the mobile terminal to execute a method forimplementing OSD. The method can include the steps of receiving aWindows Management Instrumentation (WMI) event, the WMI event beingtriggered based on an OSD shortcut operation initiated by a user,determining an OSD function corresponding to the WMI event according toa correspondence between WMI events and OSD functions, and acquiringpopup window information corresponding to the OSD function, generatingan OSD function popup window according to the popup window information,and displaying the OSD function popup window.

An apparatus for implementing OSD according to an exemplary embodimentof the present disclosure can include a processor, and a memoryconfigured to store instructions executable by the processor.

The processor can be configured to execute the following instructions ofreceiving a Windows Management Instrumentation (WMI) event, the WMIevent being triggered by an OSD shortcut operation initiated by a user,determining an OSD function corresponding to the WMI event according toa correspondence between WMI events and OSD functions, and acquiringpopup window information corresponding to the OSD function, generatingan OSD function popup window according to the popup window information,and displaying the OSD function popup window.

For the apparatuses in the above embodiments, the way in which theprocessor is configured to execute specific operations have beendescribed in detail in the embodiments of the methods for implementingOSD, and will not be repeated here.

In an exemplary embodiment, a non-temporary computer-readable storagemedium including instructions is further provided. The instructions maybe executed by the processor of the apparatus for implementing OSD tocomplete the method for implementing OSD. For example, the non-temporarycomputer-readable storage medium may be a ROM, a Random Access Memory(RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storagedevice, and the like.

For the apparatuses in the above embodiments, the specific operations ofthe instructions in the non-temporary computer-readable storage mediumhave been described in detail in the embodiments of the methods forimplementing OSD, and will not be repeated here.

Other embodiments of the present invention will be readily apparent tothose skilled in the art upon considering this specification and thepractices of inventions disclosed herein. The present application isintended to cover any variations, uses or adaptations of the presentinvention, and these variations, uses or adaptations follow the generalprinciple of the present invention and include the common knowledge orconventional technical means in this technical art that are notdisclosed herein. This specification and the embodiments are merelyexemplary, and the scope and spirit of the present invention are definedby the following claims.

It should be understood that the present invention is not limited to theprecise structures that have been described above and shown in theaccompanying drawings, and various modifications and alterations may bemade without departing from the scope of the present invention. Thescope of the present invention is merely limited by the appended claims.

1. A method for implementing On-Screen Display (OSD) on a terminaldevice, the method comprising steps of: receiving a Windows ManagementInstrumentation (WMI) event, the WMI event being triggered based on anOSD shortcut operation initiated by a user; determining an OSD functioncorresponding to the WMI event according to a correspondence between WMIevents and OSD functions, and acquiring popup window informationcorresponding to the OSD function; generating an OSD function popupwindow according to the popup window information; and displaying the OSDfunction popup window.
 2. The method according to claim 1, wherein thepopup window information corresponding to the OSD function comprises oneor more types of information including a size of the popup window, aposition of the popup window, OSD function options, and a transparencyof the popup window.
 3. The method according to claim 1, wherein thegenerating an OSD function popup window according to the popup windowinformation further comprises: generating the OSD function popup windowin an animated manner according to popup window informationcorresponding to the OSD function, the OSD function popup window being alayered window.
 4. The method according to claim 2, wherein thegenerating an OSD function popup window according to the popup windowinformation further comprises: generating the OSD function popup windowin an animated manner according to popup window informationcorresponding to the OSD function, the OSD function popup window being alayered window.
 5. The method according to claim 1, wherein thereceiving a WMI event further comprises receiving the WMI event throughan inter-process communication of an operating system.
 6. The methodaccording to claim 1, further comprising: acquiring the correspondencebetween the WMI events and the OSD functions in advance.
 7. The methodaccording to claim 1, wherein the correspondence between the WMI eventsand the OSD functions further comprises reserved extension bits that areused for storing extended WMI events and OSD functions corresponding tothe extended WMI events, and the extended WMI events are triggered basedon extended OSD shortcut operations.
 8. An apparatus for implementingOSD, comprising: a processor; and a memory that is configured to storeinstructions executable for the processor that, when executed by theprocessor, causes the processor to: receive a WMI event, the WMI eventbeing triggered based on an OSD shortcut operation initiated by a user;determine, from a correspondence between WMI events and OSD functions,an OSD function corresponding to the WMI event, and acquire popup windowinformation corresponding to the OSD function; generate an OSD functionpopup window according to the popup window information; and display theOSD function popup window.
 9. The implementation apparatus according toclaim 8, wherein the popup window information corresponding to the OSDfunction comprises one or more types of information including a size ofthe popup window, a position of the popup window, OSD function options,and a transparency of the popup window.
 10. The implementation apparatusaccording to claim 8, wherein the instructions further cause theprocessor to: generate the OSD function popup window in an animatedmanner according to popup window information corresponding to the OSDfunction, the OSD function popup window being a layered window.
 11. Theimplementation apparatus according to claim 9, wherein the instructionsfurther cause the processor to: generate the OSD function popup windowin an animated manner according to popup window informationcorresponding to the OSD function, the OSD function popup window being alayered window.
 12. The implementation apparatus according to claim 8,wherein the instructions further cause the processor to receive the WMIevent through an inter-process communication of an operating system. 13.The implementation apparatus according to claim 8, wherein theinstructions further cause the processor to acquire the correspondencebetween the WMI events and the OSD functions in advance.
 14. Theimplementation apparatus according to claim 8, wherein, thecorrespondence between the WMI events and the OSD functions furtherincludes reserved extension bits that are used for storing extended WMIevents and OSD functions corresponding to the extended WMI events, andthe extended WMI events are triggered based on extended OSD shortcutoperations.
 15. A non-temporary computer-readable storage medium storinginstructions that, when executed by a processor of a mobile terminal,enables the mobile terminal to execute a method for implementing OSD,the method comprising operations of: receiving a Windows WMI event, theWMI event being triggered based on an OSD shortcut operation initiatedby a user; determining an OSD function corresponding to the WMI eventaccording to a correspondence between WMI events and OSD functions, andacquiring popup window information corresponding to the OSD function;generating an OSD function popup window according to the popup windowinformation; and displaying the OSD function popup window.